package com.smedi.ismedi.progress.api.dto.response;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;

import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.List;

/**
 * @author pengyan
 * @date 2022/9/16
 */
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@EqualsAndHashCode(callSuper = false)
@ApiModel(value = "进度周月报 详情 返参")
public class OneAndKeyAndMilestoneTaskListResponse {
    /**
     * 主键id
     */
    @ApiModelProperty(value = "主键id")
    private  Long	id;
    /**
     * 任务名称前缀（序号）
     */
    @ApiModelProperty(value = "任务名称前缀（序号）")
    private  String	namePrefix;
    /**
     * (任务/里程碑)名称
     */
    @ApiModelProperty(value = "(任务/里程碑)名称")
    private  String	name;
    /**
     * 类型(0、里程碑 1、关键任务  3、其他、4一级任务 )
     */
    @ApiModelProperty(value = "类型(0、里程碑 1、关键任务  3、其他 4一级任务)")
    private  String	type;
    /**
     * 项目id
     */
    @ApiModelProperty(value = "主键id")
    private  Long	projectId;
    /**
     * 关联progress_week_month_report表id
     */
    @ApiModelProperty(value = "关联progress_week_month_report表id")
    private  Long	progressWeekMonthReportId;
    /**
     * 计划开始时间
     */
    @ApiModelProperty(value = "计划开始时间")
    private  LocalDate	scheduleStartTime;
    /**
     * 计划完成时间
     */
    @ApiModelProperty(value = "计划完成时间")
    private LocalDate scheduleEndTime;
    /**
     * 实际开始时间
     */
    @ApiModelProperty(value = "实际开始时间")
    private  LocalDate	realStartTime;
    /**
     * 实际完成时间
     */
    @ApiModelProperty(value = "实际完成时间")
    private  LocalDate	realEndTime;
    /**
     * 完成情况(0、未完成  1、完成)
     */
    @ApiModelProperty(value = "完成情况(0、未完成  1、完成)")
    private  Long	completion;
    /**
     * 进度状态(0、滞后  1、正常)
     */
    @ApiModelProperty(value = "进度状态(0、滞后  1、正常)")
    private  Long	status;
    /**
     * 滞后时长
     */
    @ApiModelProperty(value = "滞后时长")
    private  String	lagTime;
    /**
     * 照片url
     */
    @ApiModelProperty(value = "照片url")
    private  String	photoUrl;
    /**
     * 完成百分比
     */
    @ApiModelProperty(value = "完成百分比")
    private  String	percentage;

    /**
     * 附件图片
     */
    @ApiModelProperty(value = "附件图片")
    private List<FileResponse> attachments;
    /**
     * 判断是否可以编辑
     */
    @ApiModelProperty(value = "判断是否可以编辑")
    private Integer editFlag;

    /**
     * 父级名称
     */

    private String parentName;
}
